home *** CD-ROM | disk | FTP | other *** search
- #!mupfel
- #
- # @(#) exopt.mup
- # @(#) Stefan Eissing, 12. April 1993
- #
- #
- # Extrahiere die angegebene OPT-Datei aus default.opt. Sind keine
- # Parameter angegeben, dann werden alle in default.opt enthaltenen
- # Dateien entpackt.
- #
- # BUGS: arbeitet nur im aktuellen Verzeichnis
-
-
- extract_file()
- {
- while read line
- do
- if [ Aend = A"$line" ]
- then
- return
- fi
-
- echo $line
-
- done >> $1
- }
-
-
- extract_all()
- {
- lastline=unknown.opt
-
- while read line
- do
- if [ Abegin = A"$line" ]
- then
- echo extracting $1 >&2
- extract_file $lastline
- fi
-
- lastline=$line
- done <default.opt
-
- rm -v default.opt
- }
-
-
- extract()
- {
- echo extracting $1 >&2
-
- while read line
- do
- if [ A"$1" = A"$line" ]
- then
- if read line
- then
- extract_file $1
- else
- echo No begin after $1 >&2
- exit 99
- fi
- else
- # normale Zeile, die auch erhalten bleiben soll
- echo $line
- fi
-
- done <default.opt >tmp.opt
-
- if [ -s tmp.opt ]
- then
- mv -v tmp.opt default.opt
- else
- rm -v default.opt
- fi
- }
-
-
- if [ $# -gt 0 ]
- then
- for i in $*
- do
- extract $i
- done
- else
- extract_all
- fi
-
-